package API.SystemDome;

/**
 * ClassName:SystemText004
 * Package:API.SystemDome
 * Description:
 *
 * @Author:ZhangXin
 * @Create2023/1/30-21:49
 * @Version:v1.0
 */
public class SystemText004 {
    //public static void arraycopy(数据源组,起始索引,目的地数组,起始索引,拷贝个数) 数组拷贝
    /*
    * 细节：
    * 1.如果数据原数组和目的地数组都是基本数据类型,那么两者的类型必须保持一致,否者会报错
    * int[]arr001 = {1,2,3,4};
    * double[]arr002 =new int [10];
    * 2.在拷贝的时候需要考虑数组的长度,如果超出范围也会报错
    * 3.如果数据源数组和目的地数组都是引用数据型,那么子类类型可以可以给父类类型*/
    public static void main(String[] args) {
        int [] arr001 ={1,2,3,4,5,6,7,8,9,10};
        int [] arr002 =new int[10];
        //把arr001数组中的数组拷贝到arr002中

        /*
        * 参数一：数据源,要拷贝的数据从哪个数组来
        * 参数二：从数据源数组中的第几个索引开始拷贝
        * 参数三：目的地,我要把数据拷贝到那个数组中
        * 参数四：目的地数组的索引
        * 参数五：拷贝个数*/
//        System.arraycopy(arr001,0,arr002,4,3);//0 0 0 0 1 2 3 0 0 0
//        System.arraycopy(arr001,0,arr002,0,3); //1 2 3 0 0 0 0 0 0 0
        System.arraycopy(arr001,6,arr002,2,3);//0 0 7 8 9 0 0 0 0 0
        //验证
        for (int i = 0; i < arr002.length; i++) {
            System.out.print(arr002[i]+" ");
        }
    }
}
